package com.woniu.ly;


import com.woniu.ly.model.common.Result;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

@FeignClient("product")
public interface ProductManageAPI {

    //添加产品基本信息
    @PostMapping("makeProduct")
    Result makeProduct(String productName, String productIntro, String productCostIncludes,
                       double productPrice, int productMinPeople, String productType);

    //添加产品日程（单个节点添加）
    @PostMapping("addProductScheduing")
    Result addProductScheduing(int hotelId, int spotId, String timeNode, int scheduingSerialNum);

    //添加产品图片（多张图片上传）
    @PostMapping("addProductImg")
    Result addProductImg(int productId, List<MultipartFile> productImgFiles);

    //根据产品id查询产品
    @GetMapping("getProductById")
    Result getProductById(int productId);

    //查询所有产品
    @GetMapping("getAllProducts")
    Result getAllProducts();

    //根据产品id查询产品日程安排
    @GetMapping("getProductScheduingById")
    Result getProductScheduingById(int productId);

    //根据产品id查询产品图片
    @GetMapping("getProductImgById")
    Result getProductImgById(int productId);

    //根据产品id修改产品
    @PutMapping("modifyProductById")
    Result modifyProductById(int productId, String productName, String productIntro, String productCostIncludes,
                             double productPrice, int productMinPeople, String productType);

    //根据产品id修改产品行程安排
    @PutMapping("modifyProductScheduingById")
    Result modifyProductScheduingById(int productScheduingId, int hotelId, int spotId, String timeNode, int scheduingSerialNum);

}